package cruciverba.model;

import java.util.Observable;


public class Verifica extends Observable implements IVerifica {

	private IVerifica verificator;
	private String resultVerifica;
	private String tipo_verifica;

	public Verifica() {

	}

	public Verifica(IVerifica verificator) {
		super();
		this.verificator = verificator;
	}

	public IVerifica getVerificator() {
		return verificator;
	}

	public void setVerificator(IVerifica verificator) {
		this.verificator = verificator;
	}

	public String getResultVerifica() {
		return resultVerifica;
	}
	
	public String getTipo_verifica() {
		return tipo_verifica;
	}

	public void setTipo_verifica(String tipo_verifica) {
		this.tipo_verifica = tipo_verifica;
	}

	public void setResultVerifica(String string) throws Exception {
		this.resultVerifica = modellaVerify(string);
		imChanging();
	}

	private void imChanging() {
		setChanged();
		notifyObservers();
	}

	@Override
	public int verify(String string) throws Exception {

		return verificator.verify(string);
	}


	@Override
	public String modellaVerify(String string) throws Exception {
		
		return verificator.modellaVerify(string);
	}

}
